Conventionally, when a large variety of modules are created, each having a different parameter and a function, the interface dedicated to each of the modules must be formed in accordance therewith. Further, since the modules are different in the number of parameters and functions depending on the kind of each of modules, a large number of interfaces might be required to be prepared. Although it is possible to deal with a relatively small number of modules, with several tens of kinds of modules, the interfaces for respective modules are intricately intertwined with each other causing the implementation to be more difficult. Even in a case in which information of each of the parameters for each of the modules is passed by use of a table, all modules relating to each of the table structures need to be recompiled every time the table structure changes. Further, when recombination of the modules is required, the wide variety of interfaces prevents the recombination from being performed with ease. Therefore, a superordinate application program and the modules must eventually be reformed. The problems described above are inevitable unless the interfaces of the wide variety of kinds of modules are unified into a single kind.
A document JP-A-7-200798 discloses a method for providing software control for an imaging device and a plurality of image processing units capable of providing flexibility for manufacturing or realizing a wide variety of imaging devices to sufficiently reduce time and cost of development.
A document JP-A-2005-038251 discloses a distributed control system and a software design support system for the distributed control system for enhancing reusability of a control software module.